یادگیری تقویتی در سیستمهای چندعامله عاطفه بابائی غیرهمکار دانشآموخته کارشناسی ارشد دانشگاه علوم اقتصادی تهران a.babaee44@gmail.com چکیده یکی از مسائلی که در زمینه تحقیقات سیستمهای چندعامله مورد توجه قرار گرفته است استفاده از تکنیکهای یادگیر و تجهیز سیستمهای چندعامله با تواناییهای یادگیری میباشد. در این مسائل چندین تعادل نش وجود دارد. در یادگیری تقویتی سیستمهای چندعامله بیشترین تضمین همگرایی الگوریتمهای یادگیری به تعادل نش بهینه است. بازیهای تصادفی بعنوان توسعهای از فرایندهای تصادفی مارکوف با چندعامل در سیستمهای چندعامله و مدلسازی آنها دارای اهمیت بوده و بعنوان چارچوبی مناسب در تحقیقات یادگیری تقویتی چندعامله بکار رفتهاند. در این مقاله الگوریتم یادگیری تقویتی Nash-Q برای حل نوعی از بازی تصادفی Grid- World که سیستم چندعامله غیرهمکار است و دارای دو تعادل نش است بکار برده شد و نتایج نشان داده شدند. کلمات کليدی: سيستمهای چندعامله تئوری بازیها یادگيری تقویتی Nash Q-learning بازیهای تصادفی 1. مقدمه )MAS( متشکل از چند عامل خودکار و خودمختار )سخت افزار یا نرم افزار( با ورودیهای متفاوت و یا عالیق مختلف که با سیستم چندعامله 1 یکدیگر برای رسیدن به هدفی مشترك به ردو بدل داده میپردازند] 1 [. امروزه در بسیاری از کاربردها و در زمینههای مختلف صنعتی نظامی مخابراتی و اطالعاتی از سیستمهای پیچیده و توزیع شده چندعامله استفاده فراوانی میشود] 2 و 3 [. برای حل بسیاری از مسایل مهم دنیای واقعی مانند برخی از کاربردهای رباتیک مسیریابی در شبکه زمانبندی و تصمیمگیری اقتصادی نیازمند برنامهریزی در حالت غیرقطعی هستیم. مدلهای فرایند تصمیمگیری مارکوف چارچوب مناسبی برای مدلسازی اینگونه مسایل و یافتن راهحلهای بهینه برای آنها هستنند] 4 و 5 [. بازیهای غیرقطعی )تصادفی( به عنوان توسعهای از فرآیندهای تصادفی مارکوف با چندین عامل در سیستمهای چندعامله بسیار حائز اهمیت بوده و بعنوان چارچوبی مناسب در تحقیقات یادگیریهای چندعامله به ویژه یادگیری تقویتی چندعامله )MARL( بکار رفتهاند] و 4 5[. معموال فرایند یادگیری تقویتی چندعامله بصورت یک بازی تصادفی مدل میشود و به آن بازی مارکوفی میگویند که یک فرایند تصمیمگیری مارکوف با چند عامل است] 6 [. برمیگیرد بطوری یادگیری تقویتی چندعامله به سرعت در حال توسعه بوده و روشهای متنوع و مختلفی را درحوزههای رقابتی همکارانه و ترکیبی در که ارتباطی بین حوزههای مختلف علوم نظیر تئوری بازیها بهینهسازی و یادگیری در بازیها برقرار ساخته است] 6 [. برای حل بازیهای تصادفی الگوریتمهای یادگیری تقویتی متعددی بکاررفتهاند. بیشتر الگوریتمهای یادگیری چندعامله برپایه پیدا کردن نقاط 2 )سیاست تعادل( عمل میکنند. )1994( Littman راهحل minmax را در بازیهای با مجموع صفر ارائه میدهد. Hu و )1991( Wellman تعادل الگوریتمی برای بازیهای با مجموع کلی بنام Nash Q همگرا میشد. Suematsu و )2002( Hayashi الگوریتم پیشنهاد دادند که به تعادل نش 3 1 Multi Agent System(MAS) 1 Equilibrium Points 2 Nash Equilibrium 1
EXORL را در بازیهای مجموع صفر و مجموع کلی مطرح کردند. Kapetanakis و )2002( Kudenko الگوریتم FMQ را برای سیستمهای به جای تعادل نش را مطرح نمودند. چندعامله همکار بکاربردهاند. Greenwald و همکارانش )2003( الگوریتمی (CE-Q) مبتنی بر تعادل همبستگی 1 Meiping Song و همکاران )2005( الگوریتمی بنام Pareto-Q را برای بازیهای با مجموع کلی همکارانه مطرح کردند. Ferreira و همکارانش )2012( الگوریتمی جدید بنام HAMRL در مسایل یادگیری چندهدفه چندعامله بکار بردند. جدول 1 خالصهای از الگوریتمهای تقویتی باتوجه به وظایف عاملها نشان میدهد] 4 [. جدول 1: الگوریتمهای یادگیری تقویتی براساس نوع وظیفه Task Type Fully Cooperative Fully Competitive Static or Dynamic Static Dynamic NA Algorithms Joint Action Learners(JAL), Frequency Maximum Q-value (FMQ) Team-Q, Distributed-Q, Optimal Adaptive Learning (OAL) Minimax-Q Mixed Static Fictitious Play, MetaStrategy, Infinitesial Gradient Ascent (IGA), Win-or-Learn-Fast-IGA (WOLF- IGA), Generalized IGA (GIGA), GIGA-WOLF, AWESOME, Hyper-Q Dynamic Single-agent RL, Nash-Q, Correlated Equilibrium Q-Learning (CE-Q), Asymmetric-Q, Non- Stationary Converging Policies (NSCP), WOLF- Policy Hill Climbing (WOLF-PHC), PD-WOLF, EXORL ساختار مقاله بدینصورت است که در بخش بعدی سیستمهای چندعامله بیان میشود و در قسمت سوم یادگیری تقویتی و بازیهای تصادفی گفته شدهاست و در قسمت چهارم پیادهسازی و در قسمت بعدی نتیجهگیری بیان شد و در قسمت پایانی منابع ذکر شدهاست. 2. سیستمهای چندعامله یک سیستم چندعامله در برگیرنده جامعهای از عاملهای هوشمند و خودمختار است که در یک محیط در کنار یکدیگر در حال کار بوده و سعی در انجام کاری خاص و رسیدن به هدفی مشخص دارند] 7 [. سیستمهای چندعامله برای مدلسازی تحلیل و طراحی سیستمهایی که کنترل بین تصمیم گیرندههای خودمختار بصورت توزیع شده است مناسب هستنند. امروزه در بسیاری از کاربردها و در زمینههای مختلف صنعتی نظامی مخابراتی و اطالعاتی از سیستمهای پیچیده و توزیع شده چندعامله استفاده فراوانی میشود] 2 و 3 [. شکل 1 نمونهای از سیستمهای چندعامله را نشان میدهد. 3 Correlated Equilibrium 2
و 9 The 9th Symposium on Advances in Science and Technology (9thSASTech), Mashhad, Iran. 9thSASTech.khi.ac.ir شکل 1: گروهی از عاملها در تعامل با محيط در سیستمهای چندعامله همکار عاملها برای بدستآوردن هدف مشترکی با یکدیگر تعامل میکنند. اما در سیستمهای چندعامله غیرهمکار عاملها هیچ تعاملی با یکدیگر ندارند و هرکدام هدف منحصر به فرد خود را دنبال میکنند. 3. یادگیری تقویتی یک عامل یادگیر تقویتی رفتارش را از طریق تعامل با یک محیط ناشناخته و مشاهدهی نتایج اعمالش تعیین میکند. ایدهی یادگیری تقویتی در شکل 2 آمدهاست. در شکل 2 ابتدا عامل حالت فعلی میشود و عامل پس از سیستم (S) را دریافت میکند. با استفاده از یک تابع تصمیمساز( Policy ) عمل a مشخص اعمال a بر روی محیط پاداش r را دریافت میکند. سپس با استفاده از مقادیر a و r و s مقدار تابع یادگیر تقویتی توسط Value Function بروزرسانی میشود. الگوریتمهای یادگیری تقویتی سعی میکنند که سیاستهایی را برای نگاشت حالتها به عملهایی که هر عامل باید در آن حالت انجام دهد پیدا کنند] 1 [. شکل 2: یادگيری تقویتی یادگیری تقویتی در سیستمهای چندعامله همکار بدینصورت است که همه عاملها هدف مشترك دارند و دنبال حداکثر پاداش دریافتی مشترك هستنند در عوض در سیستمهای چندعامله غیرهمکار عاملها هریک دنبال حداکثر نمودن پاداش دریافتی خودشان هستنند. 1-3 یادگیری تقویتی در سیستمهای چندعامله یکی از مسائلی که در زمینه تحقیقات سیستمهای چندعامله مورد توجه قرار گرفته است استفاده از تکنیکهای یادگیر و تجهیز سیستمهای چندعامله با تواناییهای یادگیری میباشد] 7 [. معموال سیستمهای چندعامله در محیطهای پیچیده بزرگ پویا و غیرقابل پیشبینی عمل میکند. در چنین محیطهایی مشخص نبودن سیستمهای چندعامله بطور کامل و درست در زمان طراحی و پیش از استفاده مشکل و گاهی غیرممکن است. یعنی طراح باید مشخص کند که چه شرایطی در محیط پیش خواهد آمد در زمان نیاز چه عاملهایی در دسترس هستنند و عاملهای در دسترس چگونه باید در پاسخ به شرایط محیطی واکنش نشان بدهند و با یکدیگر ارتباط برقرار کنند. تنها راه ممکن برای حل این مشکل این است که هر عامل توانایی بهبود کارایی خود و کل سیستم را داشته باشد].]10 هدف عاملهایی که در محیطهای پویا عمل میکنند این است که تصمیمهای بهینه بگیرند. اگر عاملها از پاداشهای متناطر با اعمال مختلف مشترکی که در محیط انجام میدهند آگاه نباشد انتخاب عمل مشکل میشود. یادگیری با تنظیم انتخاب عمل عاملها براساس اطالعات جمعآوری شده در طی زمان چنین مقصودی را برآورده میسازد. یادگیری این امکان را میدهد که عاملها براساس تجربهی گذشته پاداش مورد انتظار برای اعمال فردی یا مشترك را تخمین بزنند. عامل انتخاب عمل خودش را براساس پیشبینی محیط یا مستقیما براساس پاداش دریافتی از محیط قرار میدهد. یادگیری تقویتی روشی سیستماتیک است که عمل عامل را با پاداش دریافتی از محیط مربوط میسازد. در یادگیری تقویتی عامل نیازی به مدلسازی 3
و 9 The 9th Symposium on Advances in Science and Technology (9thSASTech), Mashhad, Iran. 9thSASTech.khi.ac.ir صریح محیط ندارد زیرا اعمالش میتواند مستقیما براساس پاداشهای دریافتی از محیط پایهگذاری شود. بنابراین این روش یادگیری بخصوص در زمانی مفید است که عاملها دانش اندکی از محیط دارند].]10 2-3 فرایند تصمیمگیری مارکوف در الگوریتمهای یادگیری تقویتی معموال محیط به صورت یک فرآیند مدل میشود. یک MDP یک چهارتایی بصورت <,S تصادفی مارکوف 1 > A,T, r است که در آن S مجموعه متناهی از حاالت و A مجموعهای از عملیات قابل دسترس برای عامل و [0,1] S :T S A تابع انتقال از حالت فعلی به حالت بعدی و :r S A R تابع پاداش است] 11 [. هدف یادگیری تقویتی پیدا کردن سیاستی بصورت :π S A است بگونهای که پاداشهای دریافتی کاهش یافته در طول زمان بیشینه تعریف میشود. الگوریتم Q-Learning گردد] 11 [. برای هر سیاست نظیر π که عامل میتواند دنبال کند برروی حالتها تابعی بنام تابع ارزیابی 2 )شکل 3( یکی از تکنیکهایی است که برای تابع ارزیابی استفاده میشود. در این الگوریتمها برای هر عمل a در هرحالت s از مقدار ارزش آن عمل (Q(s,a)) مطابق رابطه 1 α نرخ یادگیری و γε[0,1] فاکتور کاهش است] 12 [. Q(s t, a t ) Q(s t, a t ) + α [R t+1 + γ max a Q(s t, a) Q(s t, a t )] (1) معموال برای انتخاب عمل در هرحالت)قسمت )policy از روش توزیع بولتزمن )رابطه 2( استفاده میشود. π(s) = argmax ( eq(s,t) τ m i=1 e Q i(s,a) τ ) (2) در رابطه 2 m تعداد اعمال مجاز برای حالت s و τ یک ثابت است و Q(s,a) مقدار تابع ارزیابی حالت s را هنگامی که عمل a انجام می- گیرد نشان میدهد] 1 [. شکل 3: الگوریتم Q-Learning فرایند تصمیمگیری مارکوف چارچوب مناسبی برای مدلسازی MAS و یافتن راهحل بهینه است. برای حل مسائل تصمیمگیری مارکوف یادگیری تقویتی بسیار مورد استفاده قرار گرفتهاست] 6 [. 3-3 بازیهای مارکوفی 1 Markov Decision Process (MDP) 2 Evaluation Function 4
در بازیهای مارکوفی راهحل به معنای پیدا کردن سیاستی برای انتخاب اعمال توسط عاملها در هر حالت است تا بتواند امید ریاضی مجموع کاهش یافته پاداشها را برای همه عاملها بیشینه نماید. در حالت خاص بازیهای مارکوف کلی در صورتی که پاداش یکسانی برای همه عاملها درنظر گرفته شود آنها را کامال همکارانه گویند. در این مورد با توجه به اینکه همه عاملها پاداش یکسان دریافت میکنند عاملها بایستی یاد بگیرند تا درمورد سیاست بهینه توافق نمایند. در مقابل در بازیهای مارکوفی کلی بدلیل وجود پاداشهای متفاوت پیدا کردن راهحل بهینه مشکل بوده و لذا نقاط تعادل در بازی مورد جستجو قرار میگیرند] 6 [. حل بازیهای مارکوفی با الگوریتمهای یادگیری تقویتی بصورت رابطه 3 و 4 میباشد. در رابطه Q هم همان payoff در ماتریس بازی درتئوری بازی است] 5 [. 3 منظور از o عمل حریف میباشد. مقادیر Q(s, a, o) = R(s, a, o) + γ T(s, a, o, s )V(s ) s (3) V(s) = max π min o O Q(s, a, o) π a (4) a A 4-3 بازیهای تصادفی بازیهای تصادفی مدلی توسعهیافته از بازیهای تکرارشونده هستند که در هر لحظه از زمان بازی در یک حالت قرار دارد.گذار از حالتی به حالت جدید بر پایه تابع احتماالتی با توجه به حالت قبلی و تعامل بین عاملها در حالت قبلی انجام میگیرد. هر حالت در یک بازی تصادفی میتواند بصورت یک فرآیند تصمیمگیری مارکوف دیده شود و هر بازی تصادفی با یک عامل بصورت یک فرآیند تصادفی دارای انواع تصمیمگیری مارکوف است. بازیهای متفاوتی بوده و از نظر پاداش به دو نوع بازیهای با مجموع صفر )بازیهای رقابتی( و بازیهای با جمع کلی تقسیمبندی شدهاند. در این بازیها عاملها اعمالشان را بطور همزمان انجام داده و پاداش هر عامل به عمل گروهی انتخاب شده توسط همه عاملها بستگی دارد. در بازیهای رقابتی دونفره ساختار ماتریس بگونهای است که پاداش هر عامل منفی پاداش عامل دیگر است. در بازیهای جمع کلی فرض میشود که برای پاداش عاملها محدودیتی مطرح نیست] 6 [. بازی تصادفی بصورت چندتایی n S, A 1,, A n, T, r 1,, r است. S مجموعه حالتها و A i مجموعه حالتهای عاملiام است. T تابع انتقال که بصورت میباشد] 13 [. r i : S A 1 A n R است که بصورت تابع پاداش عاملiام r i میباشد و T: S A 1 A n [0,1] برای بازیهای تصادفی مجموع صفر مقادیر یادگیری تقویتی در الگوریتم minimax در رابطه 5 و 6 آمده است] 11 [: Q(s, a) (1 α)q(s, a) + α(r + γv(s )) (5) V(s) = Value([Q(s, a) a A ]) (6) برای بازی تصادفی مجموع کلی الگوریتم Nash-Q بکار می رود که در شکل 4 نشان داده شد] 11 [: 5
شکل :4 الگوریتم Nash Q-Learning 4. پیادهسازی بازی Grid-World ما الگوریتم Nash Q-Learning در یک نوعی از بازی Grid-World که در شکل 5 نشان داده شده بکار بردهایم. این بازی نسخهای از بازی chicken است که دارای چندین حالت بوده و در آن فقط یک حالت وجود دارد. در اینجا دو عامل از دو گوشه یک صفحه شروع کرده و سعی می- کنند با حداقل تعداد حرکات به هدف برسند. اعمال عاملها بطور همزمان انجام میگیرد و مجموعه اعمال }راست چپ باال و پایین{ است. همانطور که در شکل 5 میبینید عامل 1 نمیتواند اعمال }پایین و چپ{ را انجام دهد و عامل 2 نیز اعمال }پایین و راست{ را نمیتواند انجام دهد. مجموعه فضای حاالت بصورت )} 2 S = {s s = (l 1, l تعریف میشود که هر حالت ) 2 s = l) 1, l مختصات عاملهای 1 و 2 نشان میدهد. عاملها نمیتوانند در یک مختصات یکسان قرار گیرند. تعداد حاالت ممکن برابر 7=56 1 است. تابع پاداش بصورت رابطه 7 است: 100 if L(l i t, a i t ) = Goal i r i t = { 1 if L(l 1 t, a 1 t ) = L(l 2 t, a 2 t ) and L(l 2 t, a 2 t ) Goal j, j = 1,2 0 otherwise (7) در این بازی گذار از حالتی به حالت دیگر با قطعیت انجام میشود یعنی حالت جاری و عمل مشترك عاملها منحصرا حالت بعدی را تعیین میکند. فرض میکنیم عاملها از موقعیت هدف در ابتدای بازی و همچنین از پاداش کلی یکدیگر اطالع ندارند. عاملها اعمالشان را همزمان انتخاب نموده و فقط میتوانند از اعمال قبلی عاملهای دیگر و حاالت فعلی )موقعیت مشترك هر دو عامل( آگاهی داشته باشند. 6
شکل 5: بازی Grid-World یک مسیر دنبالهای از اعمال از نقطه شروع تا پایان را نشان میدهد. در اصطالح بازی چنین مسیری را استراتژی یا سیاست مینامند. کوتاهترین مسیری که با مسیر عامل دیگر تداخل نداشته باشد را استراتژی بهینه مینامند که یک تعادل نش را میسازد زیرا هر مسیر )استراتژی( بهترین پاسخ در قبال دیگری است. در سمت راست شکل 5 نمونههای از مسیر تعادل نشان داده شده است. مقدار Q و v از رابطههای 1 و 9 بدست میآید: Q 1 (s 0, a 1, a 2 ) = r 1 (s 0, a 1, a 2 ) + β P(s s 0, a 1, a 2 )V 1 (s ) s (1) V 1 (s 0 ) = β t E(r t π 1, π 2, s 0 ) t (9) 1-4 نتایج پیادهسازی در این الگوریتم α برابر 0/01 و β که همان فاکتور کاهش است برابر 0/99 قرار میدهیم و الگوریتم 5000 بار تکرار میشود. جدول 2 قسمت )الف( ماتریس payoff در حالت ابتدایی ) 2 و 0 ( نشان میدهد و قسمت )ب( نتایج بعد از اجرای الگوریتم میباشد. در حالت اولیه دو تعادل نش وجود دارد. بعد از اجرای الگوریتم با بررسی نتایج مشاهده کردیم یک تعادل نش وجود دارد که نشاندهنده همگرا شدن عاملها است. شکل 6 نمودار میانگین پاداش دریافتی در تعداد تکرار است. باال )ب( چپ جدول 2: ماتریس payoff قسمت )الف( در حالت ابتدایی قسمت )ب( بعد از اجرای الگوریتم Nash Q-Learning 39 14 97 51 راست باال )الف( چپ 47/17 47/17 91 49 46 93 59 74 باال 49 91 61/2 61/2 راست باال 7
شکل 6: نمودار ميانگين پاداشهای دریافتی 5. نتیجهگیری در این مقاله ما نوعی از بازی تصادفی Grid-World که سیستم چندعامله غیرهمکار است و دارای دو تعادل نش است را با الگوریتم یادگیری تقویتی Nash-Q مورد بررسی قرار دادیم. یکی از مشکالت سیستمهای چندعامله وجود چندین تعادل نش است و محیط چنین سیستمهای پویا و غیرقطعی میباشد. در یادگیری تقویتی عامل نیازی به مدلسازی صریح محیط ندارد زیرا اعمالش میتواند مستقیما براساس پاداشهای دریافتی از محیط پایه گذاری شود. بنابراین این روش یادگیری بخصوص در زمانی مفید است که عاملها دانش اندکی از محیط دارند. با بررسی نتایج مشاهده کردیم که درصورت وجود چندین تعادل نش الگوریتمهای یادگیری تقویتی به تعادل نش بهینه همگرا میشود. 6. مراجع [1] Shoham. Y and L-Brown. K, MULTIAGENT SYSTEMS: Algorithmic, Game-Theoretic, and Logical Foundations, Shoham and Leyton-Brown, 2009, 2010. [2] Van Dyke Parunak. H, A practitioners' review of industrial agent applications, autonomous agents and multi-agent systems, Autonomous Agents and Multi-Agent Systems, vol. 3, no. 4, pp. 389-407, Dec. 2000. [3] Goel. A.K, Kummar. V and Sirivasan. S, Application of multi - agent system & agent coordination, in Proc. 2nd National Conf. Mathematical Techiniques: Emerging Paradigms for Electronics and IT Industries, MATEIT''2008, pp. 328-337, New Dehli, India, Sep. 2008. [4] Busniu. L, Babuska. R and Schutter. b, A comprehensive survey of multi-agent reinforcement learning, IEEE Trans. on System, Man, Cybern., vol. 38, no. 2, pp. 156-171, Mar. 2008. [5] Littman. M.L, Markov games as a framework for multi-agent reinforcement learning, in Proc. ICML'94, pp. 157-163, Mar. 1994. ]6[ معصومی. بهروز میبدی. محمدرضا "مدلی مبتنی بر آنتروپی و اتوماتای یادگیر برای حل یازی های تصادفی" نشریه مهندسی برق و مهندسی کامپیوتر ایران سال 1 شماره 2 صفحات 97-106 تابستان 1390. [7] Weiss. G, Multi-Agent Systems: A Modern Approach to Distributed Artificial Intelligence, Cambridge, MA: MIT Press, 1999. ]1[ اسفندیاری. سارا معصومی. بهروز میبدی. محمدرضا "ارائه یک مدل ترکیبی مبتنی بر یادگیری تقویتی و استنتاج مبتنی بر مورد برای افزایش کارایی سیستم های چندعامله" دومین همایش بین المللی موضوعات نوین در علوم کامپیوتر و اطالعات دانشگاه تحصیالت تکمیلی علوم پایه زنجان ایران صفحات -65 69-10 12 خرداد.1390 8
[9] Junling. H and Wellman. M, Multiagent Reinforcement Learning in Stochastic Games, 1999. [10] Tan. M, Multi-agent Reinforcement Learning: Independent vs. Cooperative Agents, Proceedings of the Tenth International Conference on Machine Learning, pp. 330-337, 1993. [11] Bowling. M and Veloso. M, An Analysis of Stochastic Game Theory for Multiagent Reinforcement Learning, School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213, October, 2000. [12] Ferreira. L. A, Bianchi. R. A. C and Ribeiro. C. H. C, Multi-agent Multi-objective Learning using Heuristically Accelerated Reinforcement Learning, IEEE, Brazilian Robotics Symposium and Latin American Robotics Symposium, pp. 14-20, 2012. [13] Suematsu. N and Hayashi. A, A Multiagent Reinforcement Learning Algorithm using Extended Optimal Response, AAMAS 02, Bologna, Italy, pp. 370-377, 15-19 July, 2002. 9